/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.siseventos.view.conversores;

import br.siseventos.model.TbPublico;
import br.siseventos.service.PublicoService;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.convert.Converter;
import javax.faces.convert.FacesConverter;

@FacesConverter(value = "publicoConversor")
public class ConversorPublico extends BaseConverter {
    // <editor-fold desc="Campos">
    private PublicoService publicoService = new PublicoService();
    // </editor-fold>
    // <editor-fold desc="COnstrutor">

    public ConversorPublico() {
    }
    // </editor-fold>
    // <editor-fold desc="Sobrescrita">
    // Implementação da Interface Converter

    @Override
    public Object getAsObject(FacesContext context, UIComponent component, String value) {
        // Transformar string em objeto
        TbPublico publico = null;
        try {
            publico = publicoService.consultar(Integer.parseInt(value));
        } catch (NumberFormatException ex) {
        } catch (Exception ex) {
        }
        return publico;
    }

    @Override
    public String getAsString(FacesContext context, UIComponent component, Object value) {
        // Transformar objeto em string
        String r = null;
        try {
            if (value instanceof TbPublico) {
                r = ((TbPublico) value).getIdtPublico().toString();
            }
        } catch (Exception e) {
        }
        return r;
    }
    // </editor-fold>
}
